commonjs 与 es6 模块的区别

# commonjs 与 es6 模块的区别

  1. CMJ 是社区标准,ESM 是 官方标准
  2. CMJ 是使用 API 实现的模块化,ESM 是使用新语法实现的模块化
  3. CMJ 仅在 NODE 环境中支持,ESM 各种环境都支持
  4. CMJ 是动态的依赖,同步执行,。ESM即支持动态,也支持静态,动态依赖是异步执行的。
  5. ESM 导入时有符号绑定,CMJ 只是普通函数调用和赋值。